草庐IT

java try finally 阻止关闭流

全部标签

java - HTTP 请求在 Tomcat 关闭期间被阻止

我在关闭Tomcat时遇到问题。请求到达时servlet容器正在关闭似乎被连接器阻止直到容器关闭完成。问题是,我们的servlet最多可能需要一分钟才能关闭,这意味着在此期间到达的连接最多保留一分钟。此行为是否正确/符合预期?理想的Tomcat关闭行为不是让现有的请求完成(因为它已经完成),但是拒绝新连接(而不是接受并持有它们)? 最佳答案 显然,您不是唯一注意到/评论此行为的人;请参阅此“tomcat-user”帖子:http://grokbase.com/t/tomcat/users/144b4jka4t/http-reques

java - 是否可以通过 JMX 以编程方式关闭 Java 进程

我目前正在编写一个应用程序来监视另一个Java进程并在达到特定目标时采取特定操作。例如,如果线程死锁一段时间,则终止线程,如果内存使用量超过特定数量,则发送电子邮件警报并终止进程等。我的应用程序将作为独立应用程序运行,监控特定的其他应用程序(在本地,但据我所知,远程或本地在这里没有区别)。我正在通过MXBeans监视外部JVM,但看不到一个干净的方法来终止外部进程,而不是像“kill-9”这样的系统调用(顺便说一句,我在UNIX中工作)。有没有办法通过MXBean接口(interface)杀死JVM?格雷厄姆 最佳答案 当然。在调用

java - 方法可能无法在异常时关闭流

我在使用findbugs时遇到严重错误:ThemethodcreatesanIOstreamobject,doesnotassignittoanyfields,passittoothermethods,orreturnit,anddoesnotappeartocloseitonallpossibleexceptionpathsoutofthemethod.Thismayresultinafiledescriptorleak.Itisgenerallyagoodideatouseafinallyblocktoensurethatstreamsareclosed.try{...stdErr

java - 程序化 jetty 关闭

如何以编程方式关闭嵌入式jetty服务器?我这样启动jetty服务器:Serverserver=newServer(8090);...server.start();server.join();现在,我想根据请求关闭它,例如http://127.0.0.1:8090/shutdown我如何干净地做到这一点?通常提出的解决方案是创建一个线程并从该线程调用server.stop()。但我可能需要调用Thread.sleep()以确保servlet已完成对关闭请求的处理。 最佳答案 我找到了一个非常干净整洁的方法here神奇的代码片段是:-

java - 玩!没有正确关闭 H2

我正在使用Play编写一个部署在Tomcat中的网络应用程序。因为该应用程序不会处理太多数据,所以我将默认的H2数据库与Hibernate一起使用。当我想部署应用程序的新版本时,我关闭了tomcat,删除旧的web应用程序和WAR,添加我的新WAR,然后重新启动。直到几天前,当我添加数据库组件时,它才起作用。现在,我经常无法重新部署该应用程序。当我删除旧目录时,它会自动重新生成这个结构:$ls-laRmyapp/myapp/:total24drwxr-xr-x3rootroot4096Aug2417:20.drwxr-xr-x13rootroot4096Aug2417:20..drwx

java - 我可以在退出时让 Eclipse 关闭所有项目吗?

我希望在退出工作区之前让Eclipse(3.5,如果重要的话)关闭所有打开的项目。这可能吗?编辑我忘了提到这些项目是远程存储的,出于这个原因也很好。 最佳答案 2011年更新:要在退出时真正关闭所有项目,您需要一个类似于mentionedinthisthread的插件:Ihaveimplementedshutdown()ofmyplugintoclosealltheprojectandsavetheworkspace.注意:今天,您将实现stop()methodofanAbstractUIPlugin,因为shutdown()已在E

java - 如果我在 JPopupMenu 外部单击,它不会关闭

我创建了一个JavaSwing应用程序,它没有可见的主窗口,但可以通过右键单击通过其托盘图标进行控制。我正在为此使用JPopupMenu,但是当我在弹出菜单外单击时(例如,在另一个应用程序的窗口或桌面上),JPopupMenu不会消失,这不是预期的行为。最初我使用的是按预期工作的弹出菜单,但这不允许我在菜单中包含图标。当我点击其他地方时,如何让它像预期的那样关闭? 最佳答案 //_PopupisyourJPopupMenu,callthismethodbeforesettingyourpopuptovisiblepublicvoid

windows关闭copilot预览版

如果用户不想在windows系统当中启用Copilot,可以通过以下三种方式禁用。第一种:隐藏Copilot按钮右键点击任务栏,取消勾选“显示Copilot(预览版)按钮”,任务栏则不再显示,用户可以通过快捷键“Windows键+C”来选择打开或关闭体验。第二种:Win10组策略1、打开【开始】菜单,搜索“组策略”,并打开组策略编辑器。2、打开“用户配置>管理模板>Windows组件>WindowsCopilot”路径3、双击“关闭WindowsCopilot”策略,选择“已启用”4、点击【确定】按钮,重启电脑步骤结束后,Copilot将从操作系统中禁用,也无法再使用“Windows键+C”键

java - Spring Boot 在 Debug模式下阻止 H2 控制台

我正在尝试在Debug模式下的WebIntegrationTest期间访问H2控制台。但是,我注意到在调试测试时SpringBoot正在阻止H2控制台。似乎一旦到达断点,H2控制台也会被阻止。我正在使用SpringBoot1.3.1.RELEASE。以下测试中的每个断点都会导致阻塞H2控制台。在断点1中,出现登录页面。然后我按下登录按钮,但在我继续测试到下一个断点之前没有任何反应。在断点2中,我已登录并可以执行查询。但只有当我转到下一个断点时,查询结果才会出现。@TestpublicvoidwhenGetById_thenCorrectId()throwsInterruptedExce

java - XMLStreamReader 没有关闭打开的 xml 文件

为了使用XMLStreamReader,我将其初始化为-XMLInputFactoryf=XMLInputFactory.newInstance();XMLStreamReaderreader=f.createXMLStreamReader(newFileReader("somefile.xml"));像这样迭代它-if(reader.hasNext()){reader.next();//dosomethingwithxmldata}最后关闭它就像-reader.close();这看起来是一个正常的流程,但我看到了一些奇怪的行为。即使在关闭阅读器后,操作系统也不允许我删除/移动xml文